package CONTABILIDAD_MODELO;

import Conexion.Conexion;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

public class CON_TIPO_RECURRENTE {

    private String DESCRIPCION;
    private Double ID_CODIGO_COMPROBANTE;
    private Conexion con = null;

    public CON_TIPO_RECURRENTE() {
    }

    public CON_TIPO_RECURRENTE(String DESCRIPCION, Double ID_CODIGO_COMPROBANTE) {
        this.DESCRIPCION = DESCRIPCION;
        this.ID_CODIGO_COMPROBANTE = ID_CODIGO_COMPROBANTE;
    }

    public boolean Insertar() {
        try {
            String consulta = "insert into BROKER.CON_TIPO_RECURRENTE(DESCRIPCION, ID_CODIGO_COMPROBANTE) VALUES ('" + DESCRIPCION + "'," + ID_CODIGO_COMPROBANTE + ")";
            con.EjecutarSentencia(consulta);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    public List<CON_TIPO_RECURRENTE> Todos() {
        try {
            String consulta = "select * from BROKER.CON_TIPO_RECURRENTE";
            ResultSet rs = con.EjecutarConsulta(consulta);
            return Cargar(rs);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
    public String jsonTodo() {
        List<CON_TIPO_RECURRENTE> lista=Todos();
        String html="[";
        for (int i = 0; i < lista.size(); i++) {
            html+="{\"id\":\""+lista.get(i).getID_CODIGO_COMPROBANTE()+"\",\"desc\":\""+lista.get(i).getDESCRIPCION()+"\"},";
        }
        html=html.substring(0,html.length()-1);
        html+="]";
        return html;
    }

    public List<CON_TIPO_RECURRENTE> Cargar(ResultSet rs) {
        try {
            List<CON_TIPO_RECURRENTE> lista = new ArrayList<CON_TIPO_RECURRENTE>();
            while (rs.next()) {
                CON_TIPO_RECURRENTE objeto = new CON_TIPO_RECURRENTE();
                objeto.setDESCRIPCION(rs.getString("DESCRIPCION"));
                objeto.setID_CODIGO_COMPROBANTE(rs.getDouble("ID_CODIGO_COMPROBANTE"));
                objeto.setCon(con);
                lista.add(objeto);
            }
            return lista;
        } catch (SQLException ex) {
            ex.printStackTrace();
            return null;
        }
    }

    public String getDESCRIPCION() {
        return DESCRIPCION;
    }

    public void setDESCRIPCION(String DESCRIPCION) {
        this.DESCRIPCION = DESCRIPCION;
    }

    public double getID_CODIGO_COMPROBANTE() {
        return ID_CODIGO_COMPROBANTE;
    }

    public void setID_CODIGO_COMPROBANTE(double ID_CODIGO_COMPROBANTE) {
        this.ID_CODIGO_COMPROBANTE = ID_CODIGO_COMPROBANTE;
    }

    public Conexion getCon() {
        return this.con;
    }

    public void setCon(Conexion con) {
        this.con = con;
    }
}
